Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Questa è una versione presentabile dell'AI a cui ho lavorato in questa settimana.
Come allenare l'ai
questa è la directory con tutti i file utilizzati per allenare l'ai.
per allenarlo basta runnare
bash start.sh
, oppure eseguire direttamente il comando per far partire l'allenamento.Per sapere i comandi runnare
python3 controller.py -h
La versione in orso_ai
esiste una versione che è uscita dopo ore di allenamento (quindi qualche milioncino di partite) che sembra giocare molto bene, è il
bear_v2.policy
.Note
Quella versione è stata prodotta con codice differente rispetto a questa versione che di cui sto facendo PR, ma ritengo quel codice non molto comprensibile (scritta velocemente, come veniva veniva), per questo motivo preferisco mostrare questo codice in quanto fatto per essere letto e mantenuto.
In ogni modo se curiosi della versione originale, è presente nella branch master nel mio fork
Sulla prima versione in assoluto
Come primo tentativo in assoluto a questo problema di costruzione AI, ho provato a implementare un Algoritmo di MINIMAX con AB pruning. Ma non funzionava abbastanza bene dato che lo spazio di ricerca era troppo vasto. Si può ancora ritrovare quella implementazione nella mia fork
TODOS
Ho scritto abbastanza male la versione orso_ai.py, dato che ci ho messo bene male le cose che mi servivano, senza stare a pensare altro. Ci sarebbe anche da mettere una scelta nella UI di poter scegliere se giocare contro un altro giocatore o AI.